Universal Ratio Trend Matrix [InvestorUnknown]The Universal Ratio Trend Matrix is designed for trend analysis on asset/asset ratios, supporting up to 40 different assets. Its primary purpose is to help identify which assets are outperforming others within a selection, providing a broad overview of market trends through a matrix of ratios. The indicator automatically expands the matrix based on the number of assets chosen, simplifying the process of comparing multiple assets in terms of performance.
Key features include the ability to choose from a narrow selection of indicators to perform the ratio trend analysis, allowing users to apply well-defined metrics to their comparison.
Drawback: Due to the computational intensity involved in calculating ratios across many assets, the indicator has a limitation related to loading speed. TradingView has time limits for calculations, and for users on the basic (free) plan, this could result in frequent errors due to exceeded time limits. To use the indicator effectively, users with any paid plans should run it on timeframes higher than 8h (the lowest timeframe on which it managed to load with 40 assets), as lower timeframes may not reliably load.
Indicators:
RSI_raw: Simple function to calculate the Relative Strength Index (RSI) of a source (asset price).
RSI_sma: Calculates RSI followed by a Simple Moving Average (SMA).
RSI_ema: Calculates RSI followed by an Exponential Moving Average (EMA).
CCI: Calculates the Commodity Channel Index (CCI).
Fisher: Implements the Fisher Transform to normalize prices.
Utility Functions:
f_remove_exchange_name: Strips the exchange name from asset tickers (e.g., "INDEX:BTCUSD" to "BTCUSD").
f_remove_exchange_name(simple string name) =>
string parts = str.split(name, ":")
string result = array.size(parts) > 1 ? array.get(parts, 1) : name
result
f_get_price: Retrieves the closing price of a given asset ticker using request.security().
f_constant_src: Checks if the source data is constant by comparing multiple consecutive values.
Inputs:
General settings allow users to select the number of tickers for analysis (used_assets) and choose the trend indicator (RSI, CCI, Fisher, etc.).
Table settings customize how trend scores are displayed in terms of text size, header visibility, highlighting options, and top-performing asset identification.
The script includes inputs for up to 40 assets, allowing the user to select various cryptocurrencies (e.g., BTCUSD, ETHUSD, SOLUSD) or other assets for trend analysis.
Price Arrays:
Price values for each asset are stored in variables (price_a1 to price_a40) initialized as na. These prices are updated only for the number of assets specified by the user (used_assets).
Trend scores for each asset are stored in separate arrays
// declare price variables as "na"
var float price_a1 = na, var float price_a2 = na, var float price_a3 = na, var float price_a4 = na, var float price_a5 = na
var float price_a6 = na, var float price_a7 = na, var float price_a8 = na, var float price_a9 = na, var float price_a10 = na
var float price_a11 = na, var float price_a12 = na, var float price_a13 = na, var float price_a14 = na, var float price_a15 = na
var float price_a16 = na, var float price_a17 = na, var float price_a18 = na, var float price_a19 = na, var float price_a20 = na
var float price_a21 = na, var float price_a22 = na, var float price_a23 = na, var float price_a24 = na, var float price_a25 = na
var float price_a26 = na, var float price_a27 = na, var float price_a28 = na, var float price_a29 = na, var float price_a30 = na
var float price_a31 = na, var float price_a32 = na, var float price_a33 = na, var float price_a34 = na, var float price_a35 = na
var float price_a36 = na, var float price_a37 = na, var float price_a38 = na, var float price_a39 = na, var float price_a40 = na
// create "empty" arrays to store trend scores
var a1_array = array.new_int(40, 0), var a2_array = array.new_int(40, 0), var a3_array = array.new_int(40, 0), var a4_array = array.new_int(40, 0)
var a5_array = array.new_int(40, 0), var a6_array = array.new_int(40, 0), var a7_array = array.new_int(40, 0), var a8_array = array.new_int(40, 0)
var a9_array = array.new_int(40, 0), var a10_array = array.new_int(40, 0), var a11_array = array.new_int(40, 0), var a12_array = array.new_int(40, 0)
var a13_array = array.new_int(40, 0), var a14_array = array.new_int(40, 0), var a15_array = array.new_int(40, 0), var a16_array = array.new_int(40, 0)
var a17_array = array.new_int(40, 0), var a18_array = array.new_int(40, 0), var a19_array = array.new_int(40, 0), var a20_array = array.new_int(40, 0)
var a21_array = array.new_int(40, 0), var a22_array = array.new_int(40, 0), var a23_array = array.new_int(40, 0), var a24_array = array.new_int(40, 0)
var a25_array = array.new_int(40, 0), var a26_array = array.new_int(40, 0), var a27_array = array.new_int(40, 0), var a28_array = array.new_int(40, 0)
var a29_array = array.new_int(40, 0), var a30_array = array.new_int(40, 0), var a31_array = array.new_int(40, 0), var a32_array = array.new_int(40, 0)
var a33_array = array.new_int(40, 0), var a34_array = array.new_int(40, 0), var a35_array = array.new_int(40, 0), var a36_array = array.new_int(40, 0)
var a37_array = array.new_int(40, 0), var a38_array = array.new_int(40, 0), var a39_array = array.new_int(40, 0), var a40_array = array.new_int(40, 0)
f_get_price(simple string ticker) =>
request.security(ticker, "", close)
// Prices for each USED asset
f_get_asset_price(asset_number, ticker) =>
if (used_assets >= asset_number)
f_get_price(ticker)
else
na
// overwrite empty variables with the prices if "used_assets" is greater or equal to the asset number
if barstate.isconfirmed // use barstate.isconfirmed to avoid "na prices" and calculation errors that result in empty cells in the table
price_a1 := f_get_asset_price(1, asset1), price_a2 := f_get_asset_price(2, asset2), price_a3 := f_get_asset_price(3, asset3), price_a4 := f_get_asset_price(4, asset4)
price_a5 := f_get_asset_price(5, asset5), price_a6 := f_get_asset_price(6, asset6), price_a7 := f_get_asset_price(7, asset7), price_a8 := f_get_asset_price(8, asset8)
price_a9 := f_get_asset_price(9, asset9), price_a10 := f_get_asset_price(10, asset10), price_a11 := f_get_asset_price(11, asset11), price_a12 := f_get_asset_price(12, asset12)
price_a13 := f_get_asset_price(13, asset13), price_a14 := f_get_asset_price(14, asset14), price_a15 := f_get_asset_price(15, asset15), price_a16 := f_get_asset_price(16, asset16)
price_a17 := f_get_asset_price(17, asset17), price_a18 := f_get_asset_price(18, asset18), price_a19 := f_get_asset_price(19, asset19), price_a20 := f_get_asset_price(20, asset20)
price_a21 := f_get_asset_price(21, asset21), price_a22 := f_get_asset_price(22, asset22), price_a23 := f_get_asset_price(23, asset23), price_a24 := f_get_asset_price(24, asset24)
price_a25 := f_get_asset_price(25, asset25), price_a26 := f_get_asset_price(26, asset26), price_a27 := f_get_asset_price(27, asset27), price_a28 := f_get_asset_price(28, asset28)
price_a29 := f_get_asset_price(29, asset29), price_a30 := f_get_asset_price(30, asset30), price_a31 := f_get_asset_price(31, asset31), price_a32 := f_get_asset_price(32, asset32)
price_a33 := f_get_asset_price(33, asset33), price_a34 := f_get_asset_price(34, asset34), price_a35 := f_get_asset_price(35, asset35), price_a36 := f_get_asset_price(36, asset36)
price_a37 := f_get_asset_price(37, asset37), price_a38 := f_get_asset_price(38, asset38), price_a39 := f_get_asset_price(39, asset39), price_a40 := f_get_asset_price(40, asset40)
Universal Indicator Calculation (f_calc_score):
This function allows switching between different trend indicators (RSI, CCI, Fisher) for flexibility.
It uses a switch-case structure to calculate the indicator score, where a positive trend is denoted by 1 and a negative trend by 0. Each indicator has its own logic to determine whether the asset is trending up or down.
// use switch to allow "universality" in indicator selection
f_calc_score(source, trend_indicator, int_1, int_2) =>
int score = na
if (not f_constant_src(source)) and source > 0.0 // Skip if you are using the same assets for ratio (for example BTC/BTC)
x = switch trend_indicator
"RSI (Raw)" => RSI_raw(source, int_1)
"RSI (SMA)" => RSI_sma(source, int_1, int_2)
"RSI (EMA)" => RSI_ema(source, int_1, int_2)
"CCI" => CCI(source, int_1)
"Fisher" => Fisher(source, int_1)
y = switch trend_indicator
"RSI (Raw)" => x > 50 ? 1 : 0
"RSI (SMA)" => x > 50 ? 1 : 0
"RSI (EMA)" => x > 50 ? 1 : 0
"CCI" => x > 0 ? 1 : 0
"Fisher" => x > x ? 1 : 0
score := y
else
score := 0
score
Array Setting Function (f_array_set):
This function populates an array with scores calculated for each asset based on a base price (p_base) divided by the prices of the individual assets.
It processes multiple assets (up to 40), calling the f_calc_score function for each.
// function to set values into the arrays
f_array_set(a_array, p_base) =>
array.set(a_array, 0, f_calc_score(p_base / price_a1, trend_indicator, int_1, int_2))
array.set(a_array, 1, f_calc_score(p_base / price_a2, trend_indicator, int_1, int_2))
array.set(a_array, 2, f_calc_score(p_base / price_a3, trend_indicator, int_1, int_2))
array.set(a_array, 3, f_calc_score(p_base / price_a4, trend_indicator, int_1, int_2))
array.set(a_array, 4, f_calc_score(p_base / price_a5, trend_indicator, int_1, int_2))
array.set(a_array, 5, f_calc_score(p_base / price_a6, trend_indicator, int_1, int_2))
array.set(a_array, 6, f_calc_score(p_base / price_a7, trend_indicator, int_1, int_2))
array.set(a_array, 7, f_calc_score(p_base / price_a8, trend_indicator, int_1, int_2))
array.set(a_array, 8, f_calc_score(p_base / price_a9, trend_indicator, int_1, int_2))
array.set(a_array, 9, f_calc_score(p_base / price_a10, trend_indicator, int_1, int_2))
array.set(a_array, 10, f_calc_score(p_base / price_a11, trend_indicator, int_1, int_2))
array.set(a_array, 11, f_calc_score(p_base / price_a12, trend_indicator, int_1, int_2))
array.set(a_array, 12, f_calc_score(p_base / price_a13, trend_indicator, int_1, int_2))
array.set(a_array, 13, f_calc_score(p_base / price_a14, trend_indicator, int_1, int_2))
array.set(a_array, 14, f_calc_score(p_base / price_a15, trend_indicator, int_1, int_2))
array.set(a_array, 15, f_calc_score(p_base / price_a16, trend_indicator, int_1, int_2))
array.set(a_array, 16, f_calc_score(p_base / price_a17, trend_indicator, int_1, int_2))
array.set(a_array, 17, f_calc_score(p_base / price_a18, trend_indicator, int_1, int_2))
array.set(a_array, 18, f_calc_score(p_base / price_a19, trend_indicator, int_1, int_2))
array.set(a_array, 19, f_calc_score(p_base / price_a20, trend_indicator, int_1, int_2))
array.set(a_array, 20, f_calc_score(p_base / price_a21, trend_indicator, int_1, int_2))
array.set(a_array, 21, f_calc_score(p_base / price_a22, trend_indicator, int_1, int_2))
array.set(a_array, 22, f_calc_score(p_base / price_a23, trend_indicator, int_1, int_2))
array.set(a_array, 23, f_calc_score(p_base / price_a24, trend_indicator, int_1, int_2))
array.set(a_array, 24, f_calc_score(p_base / price_a25, trend_indicator, int_1, int_2))
array.set(a_array, 25, f_calc_score(p_base / price_a26, trend_indicator, int_1, int_2))
array.set(a_array, 26, f_calc_score(p_base / price_a27, trend_indicator, int_1, int_2))
array.set(a_array, 27, f_calc_score(p_base / price_a28, trend_indicator, int_1, int_2))
array.set(a_array, 28, f_calc_score(p_base / price_a29, trend_indicator, int_1, int_2))
array.set(a_array, 29, f_calc_score(p_base / price_a30, trend_indicator, int_1, int_2))
array.set(a_array, 30, f_calc_score(p_base / price_a31, trend_indicator, int_1, int_2))
array.set(a_array, 31, f_calc_score(p_base / price_a32, trend_indicator, int_1, int_2))
array.set(a_array, 32, f_calc_score(p_base / price_a33, trend_indicator, int_1, int_2))
array.set(a_array, 33, f_calc_score(p_base / price_a34, trend_indicator, int_1, int_2))
array.set(a_array, 34, f_calc_score(p_base / price_a35, trend_indicator, int_1, int_2))
array.set(a_array, 35, f_calc_score(p_base / price_a36, trend_indicator, int_1, int_2))
array.set(a_array, 36, f_calc_score(p_base / price_a37, trend_indicator, int_1, int_2))
array.set(a_array, 37, f_calc_score(p_base / price_a38, trend_indicator, int_1, int_2))
array.set(a_array, 38, f_calc_score(p_base / price_a39, trend_indicator, int_1, int_2))
array.set(a_array, 39, f_calc_score(p_base / price_a40, trend_indicator, int_1, int_2))
a_array
Conditional Array Setting (f_arrayset):
This function checks if the number of used assets is greater than or equal to a specified number before populating the arrays.
// only set values into arrays for USED assets
f_arrayset(asset_number, a_array, p_base) =>
if (used_assets >= asset_number)
f_array_set(a_array, p_base)
else
na
Main Logic
The main logic initializes arrays to store scores for each asset. Each array corresponds to one asset's performance score.
Setting Trend Values: The code calls f_arrayset for each asset, populating the respective arrays with calculated scores based on the asset prices.
Combining Arrays: A combined_array is created to hold all the scores from individual asset arrays. This array facilitates further analysis, allowing for an overview of the performance scores of all assets at once.
// create a combined array (work-around since pinescript doesn't support having array of arrays)
var combined_array = array.new_int(40 * 40, 0)
if barstate.islast
for i = 0 to 39
array.set(combined_array, i, array.get(a1_array, i))
array.set(combined_array, i + (40 * 1), array.get(a2_array, i))
array.set(combined_array, i + (40 * 2), array.get(a3_array, i))
array.set(combined_array, i + (40 * 3), array.get(a4_array, i))
array.set(combined_array, i + (40 * 4), array.get(a5_array, i))
array.set(combined_array, i + (40 * 5), array.get(a6_array, i))
array.set(combined_array, i + (40 * 6), array.get(a7_array, i))
array.set(combined_array, i + (40 * 7), array.get(a8_array, i))
array.set(combined_array, i + (40 * 8), array.get(a9_array, i))
array.set(combined_array, i + (40 * 9), array.get(a10_array, i))
array.set(combined_array, i + (40 * 10), array.get(a11_array, i))
array.set(combined_array, i + (40 * 11), array.get(a12_array, i))
array.set(combined_array, i + (40 * 12), array.get(a13_array, i))
array.set(combined_array, i + (40 * 13), array.get(a14_array, i))
array.set(combined_array, i + (40 * 14), array.get(a15_array, i))
array.set(combined_array, i + (40 * 15), array.get(a16_array, i))
array.set(combined_array, i + (40 * 16), array.get(a17_array, i))
array.set(combined_array, i + (40 * 17), array.get(a18_array, i))
array.set(combined_array, i + (40 * 18), array.get(a19_array, i))
array.set(combined_array, i + (40 * 19), array.get(a20_array, i))
array.set(combined_array, i + (40 * 20), array.get(a21_array, i))
array.set(combined_array, i + (40 * 21), array.get(a22_array, i))
array.set(combined_array, i + (40 * 22), array.get(a23_array, i))
array.set(combined_array, i + (40 * 23), array.get(a24_array, i))
array.set(combined_array, i + (40 * 24), array.get(a25_array, i))
array.set(combined_array, i + (40 * 25), array.get(a26_array, i))
array.set(combined_array, i + (40 * 26), array.get(a27_array, i))
array.set(combined_array, i + (40 * 27), array.get(a28_array, i))
array.set(combined_array, i + (40 * 28), array.get(a29_array, i))
array.set(combined_array, i + (40 * 29), array.get(a30_array, i))
array.set(combined_array, i + (40 * 30), array.get(a31_array, i))
array.set(combined_array, i + (40 * 31), array.get(a32_array, i))
array.set(combined_array, i + (40 * 32), array.get(a33_array, i))
array.set(combined_array, i + (40 * 33), array.get(a34_array, i))
array.set(combined_array, i + (40 * 34), array.get(a35_array, i))
array.set(combined_array, i + (40 * 35), array.get(a36_array, i))
array.set(combined_array, i + (40 * 36), array.get(a37_array, i))
array.set(combined_array, i + (40 * 37), array.get(a38_array, i))
array.set(combined_array, i + (40 * 38), array.get(a39_array, i))
array.set(combined_array, i + (40 * 39), array.get(a40_array, i))
Calculating Sums: A separate array_sums is created to store the total score for each asset by summing the values of their respective score arrays. This allows for easy comparison of overall performance.
Ranking Assets: The final part of the code ranks the assets based on their total scores stored in array_sums. It assigns a rank to each asset, where the asset with the highest score receives the highest rank.
// create array for asset RANK based on array.sum
var ranks = array.new_int(used_assets, 0)
// for loop that calculates the rank of each asset
if barstate.islast
for i = 0 to (used_assets - 1)
int rank = 1
for x = 0 to (used_assets - 1)
if i != x
if array.get(array_sums, i) < array.get(array_sums, x)
rank := rank + 1
array.set(ranks, i, rank)
Dynamic Table Creation
Initialization: The table is initialized with a base structure that includes headers for asset names, scores, and ranks. The headers are set to remain constant, ensuring clarity for users as they interpret the displayed data.
Data Population: As scores are calculated for each asset, the corresponding values are dynamically inserted into the table. This is achieved through a loop that iterates over the scores and ranks stored in the combined_array and array_sums, respectively.
Automatic Extending Mechanism
Variable Asset Count: The code checks the number of assets defined by the user. Instead of hardcoding the number of rows in the table, it uses a variable to determine the extent of the data that needs to be displayed. This allows the table to expand or contract based on the number of assets being analyzed.
Dynamic Row Generation: Within the loop that populates the table, the code appends new rows for each asset based on the current asset count. The structure of each row includes the asset name, its score, and its rank, ensuring that the table remains consistent regardless of how many assets are involved.
// Automatically extending table based on the number of used assets
var table table = table.new(position.bottom_center, 50, 50, color.new(color.black, 100), color.white, 3, color.white, 1)
if barstate.islast
if not hide_head
table.cell(table, 0, 0, "Universal Ratio Trend Matrix", text_color = color.white, bgcolor = #010c3b, text_size = fontSize)
table.merge_cells(table, 0, 0, used_assets + 3, 0)
if not hide_inps
table.cell(table, 0, 1,
text = "Inputs: You are using " + str.tostring(trend_indicator) + ", which takes: " + str.tostring(f_get_input(trend_indicator)),
text_color = color.white, text_size = fontSize), table.merge_cells(table, 0, 1, used_assets + 3, 1)
table.cell(table, 0, 2, "Assets", text_color = color.white, text_size = fontSize, bgcolor = #010c3b)
for x = 0 to (used_assets - 1)
table.cell(table, x + 1, 2, text = str.tostring(array.get(assets, x)), text_color = color.white, bgcolor = #010c3b, text_size = fontSize)
table.cell(table, 0, x + 3, text = str.tostring(array.get(assets, x)), text_color = color.white, bgcolor = f_asset_col(array.get(ranks, x)), text_size = fontSize)
for r = 0 to (used_assets - 1)
for c = 0 to (used_assets - 1)
table.cell(table, c + 1, r + 3, text = str.tostring(array.get(combined_array, c + (r * 40))),
text_color = hl_type == "Text" ? f_get_col(array.get(combined_array, c + (r * 40))) : color.white, text_size = fontSize,
bgcolor = hl_type == "Background" ? f_get_col(array.get(combined_array, c + (r * 40))) : na)
for x = 0 to (used_assets - 1)
table.cell(table, x + 1, x + 3, "", bgcolor = #010c3b)
table.cell(table, used_assets + 1, 2, "", bgcolor = #010c3b)
for x = 0 to (used_assets - 1)
table.cell(table, used_assets + 1, x + 3, "==>", text_color = color.white)
table.cell(table, used_assets + 2, 2, "SUM", text_color = color.white, text_size = fontSize, bgcolor = #010c3b)
table.cell(table, used_assets + 3, 2, "RANK", text_color = color.white, text_size = fontSize, bgcolor = #010c3b)
for x = 0 to (used_assets - 1)
table.cell(table, used_assets + 2, x + 3,
text = str.tostring(array.get(array_sums, x)),
text_color = color.white, text_size = fontSize,
bgcolor = f_highlight_sum(array.get(array_sums, x), array.get(ranks, x)))
table.cell(table, used_assets + 3, x + 3,
text = str.tostring(array.get(ranks, x)),
text_color = color.white, text_size = fontSize,
bgcolor = f_highlight_rank(array.get(ranks, x)))
Komut dosyalarını "Relative Strength Index (RSI) " için ara
Larry Conners Vix Reversal II Strategy (approx.)This Pine Script™ strategy is a modified version of the original Larry Connors VIX Reversal II Strategy, designed for short-term trading in market indices like the S&P 500. The strategy utilizes the Relative Strength Index (RSI) of the VIX (Volatility Index) to identify potential overbought or oversold market conditions. The logic is based on the assumption that extreme levels of market volatility often precede reversals in price.
How the Strategy Works
The strategy calculates the RSI of the VIX using a 25-period lookback window. The RSI is a momentum oscillator that measures the speed and change of price movements. It ranges from 0 to 100 and is often used to identify overbought and oversold conditions in assets.
Overbought Signal: When the RSI of the VIX rises above 61, it signals a potential overbought condition in the market. The strategy looks for a RSI downtick (i.e., when RSI starts to fall after reaching this level) as a trigger to enter a long position.
Oversold Signal: Conversely, when the RSI of the VIX drops below 42, the market is considered oversold. A RSI uptick (i.e., when RSI starts to rise after hitting this level) serves as a signal to enter a short position.
The strategy holds the position for a minimum of 7 days and a maximum of 12 days, after which it exits automatically.
Larry Connors: Background
Larry Connors is a prominent figure in quantitative trading, specializing in short-term market strategies. He is the co-author of several influential books on trading, such as Street Smarts (1995), co-written with Linda Raschke, and How Markets Really Work. Connors' work focuses on developing rules-based systems using volatility indicators like the VIX and oscillators such as RSI to exploit mean-reversion patterns in financial markets.
Risks of the Strategy
While the Larry Connors VIX Reversal II Strategy can capture reversals in volatile market environments, it also carries significant risks:
Over-Optimization: This modified version adjusts RSI levels and holding periods to fit recent market data. If market conditions change, the strategy might no longer be effective, leading to false signals.
Drawdowns in Trending Markets: This is a mean-reversion strategy, designed to profit when markets return to a previous mean. However, in strongly trending markets, especially during extended bull or bear phases, the strategy might generate losses due to early entries or exits.
Volatility Risk: Since this strategy is linked to the VIX, an instrument that reflects market volatility, large spikes in volatility can lead to unexpected, fast-moving market conditions, potentially leading to larger-than-expected losses.
Scientific Literature and Supporting Research
The use of RSI and VIX in trading strategies has been widely discussed in academic research. RSI is one of the most studied momentum oscillators, and numerous studies show that it can capture mean-reversion effects in various markets, including equities and derivatives.
Wong et al. (2003) investigated the effectiveness of technical trading rules such as RSI, finding that it has predictive power in certain market conditions, particularly in mean-reverting markets .
The VIX, often referred to as the “fear index,” reflects market expectations of volatility and has been a focal point in research exploring volatility-based strategies. Whaley (2000) extensively reviewed the predictive power of VIX, noting that extreme VIX readings often correlate with turning points in the stock market .
Modified Version of Original Strategy
This script is a modified version of Larry Connors' original VIX Reversal II strategy. The key differences include:
Adjusted RSI period to 25 (instead of 2 or 4 commonly used in Connors’ other work).
Overbought and oversold levels modified to 61 and 42, respectively.
Specific holding period (7 to 12 days) is predefined to reduce holding risk.
These modifications aim to adapt the strategy to different market environments, potentially enhancing performance under specific volatility conditions. However, as with any system, constant evaluation and testing in live markets are crucial.
References
Wong, W. K., Manzur, M., & Chew, B. K. (2003). How rewarding is technical analysis? Evidence from Singapore stock market. Applied Financial Economics, 13(7), 543-551.
Whaley, R. E. (2000). The investor fear gauge. Journal of Portfolio Management, 26(3), 12-17.
Adaptive RSI-Stoch with Butterworth Filter [UAlgo]The Adaptive RSI-Stoch with Butterworth Filter is a technical indicator designed to combine the strengths of the Relative Strength Index (RSI), Stochastic Oscillator, and a Butterworth Filter to provide a smooth and adaptive momentum-based trading signal. This custom-built indicator leverages the RSI to measure market momentum, applies Stochastic calculations for overbought/oversold conditions, and incorporates a Butterworth Filter to reduce noise and smooth out price movements for enhanced signal reliability.
By utilizing these combined methods, this indicator aims to help traders identify potential market reversal points, momentum shifts, and overbought/oversold conditions with greater precision, while minimizing false signals in volatile markets.
🔶 Key Features
Adaptive RSI and Stochastic Oscillator: Calculates RSI using a configurable period and applies a dual-smoothing mechanism with Stochastic Oscillator values (K and D lines).
Helps in identifying momentum strength and potential trend reversals.
Butterworth Filter: An advanced signal processing filter that reduces noise and smooths out the indicator values for better trend identification.
The filter can be enabled or disabled based on user preferences.
Customizable Parameters: Flexibility to adjust the length of RSI, the smoothing factors for Stochastic (K and D values), and the Butterworth Filter period.
🔶 Interpreting the Indicator
RSI & Stochastic Calculations:
The RSI is calculated based on the closing price over the user-defined period, and further smoothed to generate Stochastic Oscillator values.
The K and D values of the Stochastic Oscillator provide insights into short-term overbought or oversold conditions.
Butterworth Filter Application:
What is Butterworth Filter and How It Works?
The Butterworth Filter is a type of signal processing filter that is designed to have a maximally flat frequency response in the passband, meaning it doesn’t distort the frequency components of the signal within the desired range. It is widely used in digital signal processing and technical analysis to smooth noisy data while preserving the important trends in the underlying data. In this indicator, the Butterworth Filter is applied to the trigger value, making the resulting signal smoother and more stable by filtering out short-term fluctuations or noise in price data.
Key Concepts Behind the Butterworth Filter:
Filter Design: The Butterworth filter works by calculating weighted averages of current and past inputs (price or indicator values) and outputs to produce a smooth output. It is characterized by the absence of ripple in the passband and a smooth roll-off after the cutoff frequency.
Cutoff Frequency: The period specified in the indicator acts as a control for the cutoff frequency. A higher period means the filter will remove more high-frequency noise and retain longer-term trends, while a lower period means it will respond more to short-term fluctuations in the data.
Smoothing Process: In this script, the Butterworth Filter is calculated recursively using the following formula,
butterworth_filter(series float input, int period) =>
float wc = math.tan(math.pi / period)
float k1 = 1.414 * wc
float k2 = wc * wc
float a0 = k2 / (1 + k1 + k2)
float a1 = 2 * a0
float a2 = a0
float b1 = 2 * (k2 - 1) / (1 + k1 + k2)
float b2 = (1 - k1 + k2) / (1 + k1 + k2)
wc: This is the angular frequency, derived from the period input.
k1 and k2: These are intermediate coefficients used in the filter calculation.
a0, a1, a2: These are the feedforward coefficients, which determine how much of the current and past input values will contribute to the filtered output.
b1, b2: These are feedback coefficients, which determine how much of the past output values will contribute to the current output, effectively allowing the filter to "remember" past behavior and smooth the signal.
Recursive Calculation: The filter operates by taking into account not only the current input value but also the previous two input values and the previous two output values. This recursive nature helps it smooth the signal by blending the recent past data with the current data.
float filtered_value = a0 * input + a1 * prev_input1 + a2 * prev_input2
filtered_value -= b1 * prev_output1 + b2 * prev_output2
input: The current input value, which could be the trigger value in this case.
prev_input1, prev_input2: The previous two input values.
prev_output1, prev_output2: The previous two output values.
This means the current filtered value is determined by the combination of:
A weighted sum of the current input and the last two inputs.
A correction based on the last two output values to ensure smoothness and remove noise.
In conclusion when filter is enabled, the Butterworth Filter smooths the RSI and Stochastic values to reduce market noise and highlight significant momentum shifts.
The filtered trigger value (post-Butterworth) provides a cleaner representation of the market's momentum.
Cross Signals for Trade Entries:
Buy Signal: A bullish crossover of the K value above the D value, particularly when the values are below 40 and when the Stochastic trigger is below 1 and the filtered trigger is below 35.
Sell Signal: A bearish crossunder of the K value below the D value, particularly when the values are above 60 and when the Stochastic trigger is above 99 and the filtered trigger is above 90.
These signals are plotted visually on the chart for easy identification of potential trading opportunities.
Overbought and Oversold Zones:
The indicator highlights the overbought zone when the filtered trigger surpasses a specific threshold (typically above 100) and the oversold zone when it drops below 0.
The color-coded fill areas between the Stochastic and trigger lines help visualize when the market may be overbought (likely a reversal down) or oversold (potential reversal up).
🔶 Disclaimer
Use with Caution: This indicator is provided for educational and informational purposes only and should not be considered as financial advice. Users should exercise caution and perform their own analysis before making trading decisions based on the indicator's signals.
Not Financial Advice: The information provided by this indicator does not constitute financial advice, and the creator (UAlgo) shall not be held responsible for any trading losses incurred as a result of using this indicator.
Backtesting Recommended: Traders are encouraged to backtest the indicator thoroughly on historical data before using it in live trading to assess its performance and suitability for their trading strategies.
Risk Management: Trading involves inherent risks, and users should implement proper risk management strategies, including but not limited to stop-loss orders and position sizing, to mitigate potential losses.
No Guarantees: The accuracy and reliability of the indicator's signals cannot be guaranteed, as they are based on historical price data and past performance may not be indicative of future results.
ToxicJ3ster - Day Trading SignalsThis Pine Script™ indicator, "ToxicJ3ster - Signals for Day Trading," is designed to assist traders in identifying key trading signals for day trading. It employs a combination of Moving Averages, RSI, Volume, ATR, ADX, Bollinger Bands, and VWAP to generate buy and sell signals. The script also incorporates multiple timeframe analysis to enhance signal accuracy. It is optimized for use on the 5-minute chart.
Purpose:
This script uniquely combines various technical indicators to create a comprehensive and reliable day trading strategy. Each indicator serves a specific purpose, and their integration is designed to provide multiple layers of confirmation for trading signals, reducing false signals and increasing trading accuracy.
1. Moving Averages: These are used to identify the overall trend direction. By calculating short and long period Moving Averages, the script can detect bullish and bearish crossovers, which are key signals for entering and exiting trades.
2. RSI Filtering: The Relative Strength Index (RSI) helps filter signals by ensuring trades are only taken in favorable market conditions. It detects overbought and oversold levels and trends within the RSI to confirm market momentum.
3. Volume and ATR Conditions: Volume and ATR multipliers are used to identify significant market activity. The script checks for volume spikes and volatility to confirm the strength of trends and avoid false signals.
4. ADX Filtering: The ADX is used to confirm the strength of a trend. By filtering out weak trends, the script focuses on strong and reliable signals, enhancing the accuracy of trade entries and exits.
5. Bollinger Bands: Bollinger Bands provide additional context for the trend and help identify potential reversal points. The script uses Bollinger Bands to avoid false signals and ensure trades are taken in trending markets.
6. Higher Timeframe Analysis: This feature ensures that signals align with broader market trends by using higher timeframe Moving Averages for trend confirmation. It adds a layer of robustness to the signals generated on the 5-minute chart.
7. VWAP Integration: VWAP is used for intraday trading signals. By calculating the VWAP and generating buy and sell signals based on its crossover with the price, the script provides additional confirmation for trade entries.
8. MACD Analysis: The MACD line, signal line, and histogram are calculated to generate additional buy/sell signals. The MACD is used to detect changes in the strength, direction, momentum, and duration of a trend.
9. Alert System: Custom alerts are integrated to notify traders of potential trading opportunities based on the signals generated by the script.
How It Works:
- Trend Detection: The script calculates short and long period Moving Averages and identifies bullish and bearish crossovers to determine the trend direction.
- Signal Filtering: RSI, Volume, ATR, and ADX are used to filter and confirm signals, ensuring trades are taken in strong and favorable market conditions.
- Multiple Timeframe Analysis: The script uses higher timeframe Moving Averages to confirm trends, aligning signals with broader market movements.
- Additional Confirmations: VWAP, MACD, and Bollinger Bands provide multiple layers of confirmation for buy and sell signals, enhancing the reliability of the trading strategy.
Usage:
- Customize the input parameters to suit your trading strategy and preferences.
- Monitor the generated signals and alerts to make informed trading decisions.
- This script is made to work best on the 5-minute chart.
Disclaimer:
This indicator is not perfect and can generate false signals. It is up to the trader to determine how they would like to proceed with their trades. Always conduct thorough research and consider seeking advice from a financial professional before making trading decisions. Use this script at your own risk.
Altered Money Flow Index by CoffeeShopCrypto**Use the comments section below to request access to the script**
Market Trends need to be confirmed each and every time.
Over the years the Money Flow Index has been a tool to find where the money is flowing
either long or short in market movements.
Long confirmation and false short
Confirming a long entry:
1. Wait for price to close above a previous swing high.
2. Look to see if the MFI is in UPCOLOR and above ZERO.
Confriming a short entry:
1. Wait for price to close below a previous swing low.
2. Look to see if the MFI is in DOWNCOLOR and below ZERO.
NON-Confirmed market: (Flat Market)
Anytime you believe you have a confirmation via price action, check the MFI to see if it is in FLAT MARKET color.
If this is true, do not enter until it is out of FLAT MARKET color.
Flat Market ALtered MFI
A Flat Market Altered MFI reading can do a few things for you.
It can help to confirm the following:
1. price action is moving sideways.
2. a pullback or market stall that was deep enough where dis-intrest in the market occured.
3. a sudden loss of momentum in the short term trend of closing prices.
Utilizing the Altered Money Flow Index indicator by CoffeeShopCrypto offers traders a nuanced approach to identifying market trends, including periods of flat market conditions. Alongside its directional bias indicating bullish or bearish activity based on whether values are above or below zero, respectively, the script incorporates a distinctive feature to recognize flat markets. When neither bullish nor bearish momentum dominates, the indicator designates a flat market, denoted by a distinct color. This feature enhances traders' ability to discern not only bullish and bearish phases but also periods of market consolidation or indecision.
In addition to its ability to recognize bullish and bearish trends, the Altered Money Flow Index indicator by CoffeeShopCrypto incorporates a unique feature to signify potential pullbacks or pauses in market momentum. This is particularly evident when the MFI crosses below zero while displaying a flat market color. Such occurrences suggest that although the short-term movement may appear bearish, it's likely a temporary pullback rather than a sustained trend reversal. Similarly, when the MFI crosses above zero amidst a flat market color, it indicates a potential pause in bullish momentum, urging traders to exercise caution and await confirmation of a sustained uptrend. By incorporating these nuanced observations, traders can effectively discern between short-term fluctuations and significant trend changes, enabling them to make more judicious trading decisions and avoid premature entries or exits.
Alongside its directional bias indicating bullish or bearish activity based on whether values are above or below zero, respectively, the script integrates the Relative Strength Index (RSI) to further refine market analysis. When the Altered MFI and RSI are both above zero, it suggests a strong bullish trend, indicating significant buying pressure. Conversely, when both indicators are below zero, it indicates a strong bearish trend, signifying heightened selling pressure. By observing the confluence between the Altered MFI and RSI, traders can gain valuable confirmation of bullish or bearish money flow in the market, enabling them to make more informed trading decisions.
MBAND 200 4H BTC/USDT - By MGS-TradingMBAND 200 4H BTC/USDT with RSI and Volume by MGS-Trading: A Neural Network-Inspired Indicator
Introduction:
The MBAND 200 4H BTC/USDT with RSI and Volume represents a groundbreaking achievement in the integration of artificial intelligence (AI) into cryptocurrency market analysis. Developed by MGS-Trading, this indicator is the culmination of extensive research and development efforts aimed at leveraging AI's power to enhance trading strategies. By synthesizing neural network concepts with traditional technical analysis, the MBAND indicator offers a dynamic, multi-dimensional view of the market, providing traders with unparalleled insights and actionable signals.
Innovative Approach:
Our journey to create the MBAND indicator began with a simple question: How can we mimic the decision-making prowess of a neural network in a trading indicator? The answer lay in the weighted aggregation of Exponential Moving Averages (EMAs) from multiple timeframes, each serving as a unique input akin to a neuron in a neural network. These weights are not arbitrary; they were painstakingly optimized through backtesting across various market conditions to ensure they reflect the significance of each timeframe’s contribution to overall market dynamics.
Core Features:
Neural Network-Inspired Weights: The heart of the MBAND indicator lies in its AI-inspired weighting system, which treats each timeframe’s EMA as an input node in a neural network. This allows the indicator to process complex market data in a nuanced and sophisticated manner, leading to more refined and informed trading signals.
Multi-Timeframe EMA Analysis: By analyzing EMAs from 15 minutes to 3 days, the MBAND indicator captures a comprehensive snapshot of market trends, enabling traders to make informed decisions based on a broad spectrum of data.
RSI and Volume Integration: The inclusion of the Relative Strength Index (RSI) and volume data adds layers of confirmation to the signals generated by the EMA bands. This multi-indicator approach helps in identifying high-probability setups, reinforcing the neural network’s concept of leveraging multiple data points for decision-making.
Usage Guidelines:
Signal Interpretation: The MBAND bands provide a visual representation of the market’s momentum and direction. A price moving above the upper band signals strength and potential continuation of an uptrend, while a move below the lower band suggests weakness and a possible downtrend.
Overbought/Oversold Conditions: The RSI component identifies when the asset is potentially overbought (>70) or oversold (<30). Traders should watch for these conditions near the MBAND levels for potential reversal opportunities.
Volume Confirmation: An increase in volume accompanying a price move towards or beyond an MBAND level serves as confirmation of the strength behind the move. This can indicate whether a breakout is likely to sustain or if a reversal has substantial backing.
Strategic Entry and Exit Points: Combine the MBAND readings with RSI and volume indicators to pinpoint strategic entry and exit points. For example, consider entering a long position when the price is near the lower MBAND, RSI indicates oversold conditions, and there is a notable volume increase.
About MGS-Trading:
At MGS-Trading, we are passionate about harnessing the transformative power of AI to revolutionize cryptocurrency trading. Our indicators and tools are designed to provide traders with advanced analytics and insights, drawing on the latest AI techniques and methodologies. The MBAND 200 4H BTC/USDT with RSI and Volume indicator is a prime example of our commitment to innovation, offering traders a sophisticated, AI-enhanced tool for navigating the complexities of the cryptocurrency markets.
Disclaimer:
The MBAND indicator is provided for informational purposes only and does not constitute investment advice. Trading cryptocurrencies involves significant risk and can result in the loss of your investment. We recommend conducting your own research and consulting with a qualified financial advisor before making any trading decisions.
Co-relation and St-deviation Strategy - BNB/USDT 15minThis indicator based on statistical analysis. it uses standard deviation and its co-relation to price action to generate signals. and following indicators has been used to calculate standard deviation and its co-relation values. finally it is capable to identify market changes in bottoms to pic most suitable points.
1. Parabolic SAR (parabolic stop and reverse)
2. Supertrend
3. Relative strength index (RSI)
4. Money flow index (MFI)
5. Balance of Power
6. Chande Momentum Oscillator
7. Center of Gravity (COG)
8. Directional Movement Index (DMI)
9. Stochastic
10. Symmetrically weighted moving average with fixed length
11. True strength index (TSI)
12. Williams %R
13. Accumulation/distribution index
14. Intraday Intensity Index
15. Negative Volume Index
16. Positive Volume Index
17. On Balance Volume
18. Price-Volume Trend
19. True range
20. Volume-weighted average price
21. Williams Accumulation/Distribution
22. Williams Variable Accumulation/Distribution
23. Simple Moving Average
24. Exponential Moving Average
25. CCI (commodity channel index)
26. Chop Zone
27. Ease of Movement
28. Detrended Price Oscillator
29. Advance Decline Line
30. Bull Bear Power
Alpha Dynamic Momentum Index Pine@v=4- What Is Dynamic Momentum Index?
- The dynamic momentum index is a technical indicator used to determine if an asset is overbought or oversold. It can be used to generate trade signals in trending and ranging markets.
- The dynamic momentum index was developed by Tushar Chande and Stanley Kroll and is similar to the relative strength index (RSI). The main difference between the two is that the RSI uses a fixed number of time periods (usually 14) in its calculation, while the dynamic momentum index uses different time periods as volatility changes, typically between five and 30.
- The number of time periods used in the dynamic momentum index decreases as volatility in the underlying security increases, making this indicator more responsive to changing prices than the RSI. This is particularly useful when an asset's price moves quickly as it approaches key support or resistance levels. Because the indicator is more sensitive, traders can potentially find earlier entry and exit points than with the RSI, but it could also be more prone to whipsaws and false signals.
Combo Backtest 123 Reversal & Relative Volatility Index This is combo strategies for get a cumulative signal.
First strategy
This System was created from the Book "How I Tripled My Money In The
Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
The strategy buys at market, if close price is higher than the previous close
during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
The strategy sells at market, if close price is lower than the previous close price
during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
Second strategy
The RVI is a modified form of the relative strength index (RSI).
The original RSI calculation separates one-day net changes into
positive closes and negative closes, then smoothes the data and
normalizes the ratio on a scale of zero to 100 as the basis for the
formula. The RVI uses the same basic formula but substitutes the
10-day standard deviation of the closing prices for either the up
close or the down close. The goal is to create an indicator that
measures the general direction of volatility. The volatility is
being measured by the 10-days standard deviation of the closing prices.
WARNING:
- For purpose educate only
- This script to change bars colors.
Sterke Trendwissel SignalenOverview
The indicator combines three technical analysis tools to generate strong buy and sell signals:
Moving Averages (MA): Short-term (9-period) and long-term (21-period) simple moving averages.
Relative Strength Index (RSI): A 14-period RSI to measure overbought and oversold conditions.
Volume: A volume multiplier (1.2x) compared to the average volume over 20 periods.
Signals
The indicator generates two types of signals:
Strong Buy: When the short-term MA crosses above the long-term MA (bullish crossover), the relative volume is above the threshold (1.2x average), and the RSI is oversold (< 30).
Strong Sell: When the short-term MA crosses below the long-term MA (bearish crossover), the relative volume is above the threshold (1.2x average), and the RSI is overbought (> 70).
Visualizations
The indicator plots:
The short-term MA (blue line)
The long-term MA (orange line)
"STRONG BUY" labels (green) below the bar when a strong buy signal is generated
"STRONG SELL" labels (red) above the bar when a strong sell signal is generated
Alerts
The indicator sets up alerts for strong buy and sell signals, which can be configured in TradingView's alert system.
In summary, this indicator aims to identify strong trend changes by combining moving average crossovers, high volume, and RSI overbought/oversold conditions.
RSI.TrendContext
The Relative Strength Index (RSI) is one of the most widely used classical indicators in technical analysis, typically employed to identify overbought or oversold market conditions. It reflects the degree of upside or downside dominance within a specified period. However, in its standard form, RSI is not particularly effective as a standalone entry trigger.
The RSI.Trend indicator enhances the RSI to provide a more reliable method for distinguishing between bullish and bearish market regimes and offers specific entry triggers. It adds supplementary value to the pure RSI read.________________________________________
Concept
In trending markets, an Exponential Moving Average (EMA) of the price is often smoother and more stable than raw price data. As a result, the RSI calculated on this smoothed price (i.e., the EMA) tends to react earlier and more consistently than the standard RSI. Specifically:
• In uptrends, the RSI of the EMA tends to exceed the RSI of the original price.
• In downtrends, it tends to lag behind.
The difference between these two RSI readings provides a stable and less noisy measure of market bias—positive in uptrends, negative in downtrends. The crossing points can serve as entry triggers. This is, what the RSI.Trend is trying to capture.
________________________________________
The RSI.Trend indicator operates as follows:
• It first computes the 5-period EMA of the price series of the underlying ("EMA5").
• It calculates the 14-period RSI of the original price series ("RSI") as well as the 14-period RSI of EMA5 ("RSIEMA").
• It then determines the 14-period EMA of RSI ("RSI.MA") and RSIEMA ("RSIEMA.MA").
These values are used to define a Baseline and a Trigger Line:
• Baseline: The average of RSI and RSI.MA.
• Trigger Line: The average of RSIEMA and RSIEMA.MA.
Essentially, the baseline represents a smoother version of the RSI of the original price series, while the trigger line is a smoother version of the RSI on the EMA5 of the original price series.
Additionally, the RSI.Trend Background Value is calculated as the difference between the Trigger Line and the Baseline, slightly accelerated by incorporating the current bias of this difference. This acceleration causes the Background Value to react somewhat faster than the pure difference between the two lines.
How to use the RSI.Trend:
• As mentioned in the introductory context, during uptrends, the trigger line remains above the baseline; in downtrends, it stays below the baseline.
• A crossover of the baseline by the trigger line indicates a regime shift from bearish to bullish and can signal avoiding adding short positions, closing short positions, or adding long positions.
• A crossunder of the baseline by the trigger line indicates a regime shift from bullish to bearish and can signal avoiding adding long positions, closing long positions, or adding short positions.
• The level of the Trigger Line can serve as a confidence indicator; for instance, if the trigger line crosses under the baseline coming from very high values, it implies high confidence.
• The Background Value indicates the accelerated difference between the two lines:
o > 0 (Green background): Indicates a Bullish regime.
o < 0 (Red background): Indicates a Bearish regime.
The Background Value reacts slightly faster than line crossings due to its acceleration relative to the difference of the two lines.
Including these lines in the script besides the Background Value, provides insight into their levels and their origins, aiding in formulating confidence in an entry trigger, which the background value alone cannot provide. The change in slope of the trigger Line can also be used as an early and fast position-trigger.
Finally, the Background Value can be utilized in continuous trading scenarios (i.e., no entry points, always engaged) as a multiplier on a predefined max-exposure value, representing the current exposure as a fraction of that max-exposure.
The usage of RSI.Trend is also exemplified in the introductory chart.________________________________________
Final Notes
As with all indicators, the RSI.Trend is most effective when used in conjunction with other technical tools and market context. It does not predict future price movements; rather, it reflects current market dynamics and recent directional tendencies. Use it with discretion and as part of a broader trading strategy.
Adaptive Volume-Weighted RSI (AVW-RSI)Concept Summary
The AVW-RSI is a modified version of the Relative Strength Index (RSI), where each price change is weighted by the relative trading volume for that period. This means periods of high volume (typically driven by institutions or “big money”) have a greater influence on the RSI calculation than periods of low volume.
Why AVW-RSI Helps Traders
Avoids Weak Signals During Low Volume
Standard RSI may show overbought/oversold zones even during low-volume periods (e.g., during lunch hours or after news).
AVW-RSI gives less weight to these periods, avoiding misleading signals.
Amplifies Strong Momentum Moves
If RSI is rising during high volume, it's more likely driven by institutional buying—AVW-RSI reflects that stronger by weighting the RSI component.
Filters Out Retail Noise
By prioritizing high-volume candles, it naturally discounts fakeouts caused by thin markets or retail-heavy moves.
Highlights Institutional Entry/Exit
Useful for spotting hidden accumulation/distribution that classic RSI would miss.
How It Works (Calculation Logic)
Traditional RSI Formula Recap
RSI = 100 - (100 / (1 + RS))
RS = Average Gain / Average Loss (over N periods)
Modified Step – Apply Volume Weight
For each period
Gain_t = max(Close_t - Close_{t-1}, 0)
Loss_t = max(Close_{t-1} - Close_t, 0)
Weight_t = Volume_t / AvgVolume(N)
WeightedGain_t = Gain_t * Weight_t
WeightedLoss_t = Loss_t * Weight_t
Weighted RSI
AvgWeightedGain = SMA(WeightedGain, N)
AvgWeightedLoss = SMA(WeightedLoss, N)
RS = AvgWeightedGain / AvgWeightedLoss
AVW-RSI = 100 - (100 / (1 + RS))
Visual Features on Chart
Line Color Gradient
Color gets darker as volume weight increases, signaling stronger conviction.
Overbought/Oversold Zones
Traditional: 70/30
Suggested AVW-RSI zones: Use dynamic thresholds based on historical volatility (e.g., 80/20 for high-volume coins).
Volume Spike Flags
Mark RSI turning points that occurred during volume spikes with a special dot/symbol.
Trading Strategies with AVW-RSI
1. Weighted RSI Divergence
Regular RSI divergence becomes more powerful when volume is high.
AVW-RSI divergence with volume spike is a strong signal of reversal.
2. Trend Confirmation
RSI crossing above 50 during rising volume is a good entry signal.
RSI crossing below 50 with high volume is a strong exit or short trigger.
3. Breakout Validation
Price breaking resistance + AVW-RSI > 60 with volume = Confirmed breakout.
Price breaking but AVW-RSI < 50 or on low volume = Potential fakeout.
Example Use Case
Stock XYZ is approaching a resistance zone. A trader sees:
Standard RSI: 65 → suggests strength.
Volume is 3x the average.
AVW-RSI: 78 → signals strong momentum with institutional backing.
The trader enters confidently, knowing this isn't just low-volume hype.
Limitations / Tips
Works best on liquid assets (Forex majors, large-cap stocks, BTC/ETH).
Should be used alongside price action and volume analysis—not standalone.
Periods of extremely high volume (news events) might need smoothing to avoid spikes.
Adaptive Freedom Machine w/labelsAdaptive Freedom Machine w/ Labels
Overview
The Adaptive Freedom Machine w/ Labels is a versatile Pine Script indicator designed to assist traders in identifying buy and sell opportunities across various market conditions (trending, ranging, or volatile). It combines Exponential Moving Averages (EMAs), Relative Strength Index (RSI), Average True Range (ATR), and customizable time filters to generate actionable signals. The indicator overlays on the price chart, displaying EMAs, a dynamic cloud, scaled RSI levels, buy/sell signals, and market condition labels, making it suitable for swing trading, day trading, or scalping.
What It Does
This indicator generates buy and sell signals based on the interaction of two EMAs, filtered by RSI thresholds, ATR-based volatility, and user-defined time windows. It adapts to the selected market condition by adjusting EMA lengths, RSI thresholds, and trading hours. A dynamic cloud highlights trend direction or neutral zones, and candlestick bodies are colored in neutral conditions for clarity. A table displays real-time trend and volatility status.
How It Works
The indicator uses the following components:
EMAs: Two EMAs (short and long) are calculated on a user-selected timeframe (1, 5, 15, 30, or 60 minutes). Their crossover or crossunder generates potential buy/sell signals, with lengths adjusted based on the market condition (e.g., longer EMAs for trending markets, shorter for ranging).
Dynamic Cloud: The area between the EMAs forms a cloud, colored green for uptrends, red for downtrends, or a user-defined color (default yellow) for neutral zones (when EMAs are close, determined by an ATR-based threshold). Users can widen the cloud for visibility.
RSI Filter: RSI is scaled to price levels and plotted on the chart (optional). Signals are filtered to ensure RSI is within user-defined buy/sell thresholds and not in overbought/oversold zones, with thresholds tailored to the market condition.
ATR Volatility Filter: An optional filter ensures signals occur during sufficient volatility (ATR(14) > SMA(ATR, 20)).
Time Filter: Signals are restricted to a user-defined or market-specific time window (e.g., 10:00–15:00 UTC for volatile markets), with an option for custom hours.
Visual Aids: Buy/sell signals appear as green triangles (buy) or red triangles (sell). Candlesticks in neutral zones are colored (default yellow). A table in the top-right corner shows the current trend (Uptrend, Downtrend, Neutral) and volatility (High or Low).
The indicator ensures compatibility with standard chart types (e.g., candlestick charts) to produce realistic signals, avoiding non-standard types like Heikin Ashi or Renko.
How to Use It
Add to Chart: Apply the indicator to a candlestick or bar chart on TradingView.
Configure Settings:
Timeframe: Choose a timeframe (1, 5, 15, 30, or 60 minutes) to align with your trading style.
Market Condition: Select one market condition (Trending, Ranging, or Volatile). Volatile is the default if none is selected. Only one condition can be active.
Filters:
Enable/disable the ATR volatility filter to trade only in high-volatility periods.
Enable the time filter and choose default hours (specific to the market condition) or set custom UTC hours.
Cloud Settings: Adjust the cloud width, neutral zone threshold, and color. Enable/disable the neutral cloud.
RSI Display: Toggle the scaled RSI and its thresholds on the chart.
Interpret Signals:
Buy Signal: A green triangle below the bar indicates a potential long entry (EMA crossover, RSI above buy threshold, within time window, and passing volatility filter).
Sell Signal: A red triangle above the bar indicates a potential short entry (EMA crossunder, RSI below sell threshold, within time window, and passing volatility filter).
Neutral Zone: Yellow candlesticks and cloud (if enabled) suggest a lack of clear trend; avoid trading or use for range-bound strategies.
Monitor the Table: Check the top-right table for real-time trend (Uptrend, Downtrend, Neutral) and volatility (High or Low) to confirm market context.
Unique Features
Adaptive Parameters: Automatically adjusts EMA lengths, RSI thresholds, and trading hours based on the selected market condition, reducing manual tweaking.
Neutral Zone Detection: Uses an ATR-based threshold to identify low-trend periods, helping traders avoid choppy markets.
Scaled RSI Visualization: Plots RSI and thresholds directly on the price chart, making it easier to assess momentum relative to price action.
Flexible Time Filtering: Supports both default and custom UTC-based trading windows, ideal for day traders targeting specific sessions.
Dynamic Cloud: Enhances trend visualization with customizable width and neutral zone coloring, improving readability.
Notes
Use on standard candlestick or bar charts to ensure realistic signals.
Test the indicator on a demo account to understand its behavior in your chosen market and timeframe.
Adjust settings to match your trading strategy, but avoid over-optimizing for past data.
The indicator is not a standalone system; combine it with other analysis (e.g., support/resistance, news events) for better results.
Limitations
Signals may lag in fast-moving markets due to EMA-based calculations.
Neutral zone detection may vary in extremely volatile or illiquid markets.
Time filters are UTC-based; ensure your platform’s timezone settings align.
This indicator is designed for traders seeking a customizable, trend-following tool that adapts to different market environments while providing clear visual cues and robust filtering.
CyberCandle SwiftEdgeCyberCandle SwiftEdge
Overview
CyberCandle SwiftEdge is a cutting-edge, AI-inspired trading indicator designed for traders seeking precision and clarity in trend-following and swing trading. Powered by SwiftEdge, it combines Heikin Ashi candles, a gradient-colored Exponential Moving Average (EMA), and a Relative Strength Index (RSI) to deliver clear buy and sell signals. Featuring glowing visuals, dynamic signal icons, and a customizable RSI dashboard in the top-right corner, this script offers a futuristic interface for identifying high-probability trade setups on various timeframes (e.g., 1H, 4H).
What It Does
CyberCandle SwiftEdge integrates three powerful components to generate actionable trading signals:
Heikin Ashi Candles: Smooths price action to highlight trends, reducing market noise and making reversals easier to spot.
Gradient EMA: A 100-period EMA with dynamic color transitions (blue/cyan for uptrends, red/pink for downtrends) to confirm market direction.
RSI Dashboard: A neon-lit display showing RSI levels, indicating overbought (>70), oversold (<30), or neutral (30-70) conditions.
Buy and sell signals are marked with prominent, glowing icons (triangles and arrows) based on trend direction, momentum, and specific Heikin Ashi patterns. The script’s customizable parameters allow traders to tailor the strategy to their preferences, balancing signal frequency and precision.
How It Works
The strategy leverages the synergy of Heikin Ashi, EMA, and RSI to filter trades and highlight opportunities:
Trend Direction: The price must be above the EMA for buy signals (bullish trend) or below for sell signals (bearish trend). The EMA’s gradient color shifts based on its slope, visually reinforcing trend strength.
Momentum Confirmation: RSI must exceed a user-defined threshold (default: 50) for buy signals or fall below it for sell signals, ensuring momentum supports the trade.
Candle Patterns: Buy signals require a green Heikin Ashi candle (close > open), with the two prior candles having minimal upper wicks (≤5% of candle body) and being red (indicating a retracement). Sell signals require a red candle, minimal lower wicks, and two prior green candles.
RSI Dashboard: Positioned in the top-right corner, it features a glowing circle (red for overbought, green for oversold, blue for neutral), the current RSI value, and a status indicator (triangle for extremes, square for neutral). This provides instant momentum insights without cluttering the chart.
By combining Heikin Ashi’s trend clarity, EMA’s directional filter, and RSI’s momentum validation, CyberCandle SwiftEdge minimizes false signals and highlights trades with strong potential. Its vibrant, AI-like visuals make it easy to interpret at a glance.
How to Use It
Add to Chart: In TradingView, search for "CyberCandle SwiftEdge" and add it to your chart. Set the chart to Heikin Ashi candles for optimal compatibility.
Interpret Signals:
Buy Signal: Large green triangles and arrows appear below candles when the price is above the EMA, RSI is above the buy threshold (default: 50), and conditions for a bullish retracement are met. Consider entering a long position with a 1:2 risk/reward ratio.
Sell Signal: Large red triangles and arrows appear above candles when the price is below the EMA, RSI is below the sell threshold (default: 50), and conditions for a bearish retracement are met. Consider entering a short position.
RSI Dashboard: Monitor the top-right dashboard. A red circle (RSI > 70) suggests caution for buys, a green circle (RSI < 30) indicates potential buying opportunities, and a blue circle (RSI 30-70) signals neutrality.
Customize Parameters: Open the indicator’s settings to adjust:
EMA Length (default: 100): Increase (e.g., 200) for longer-term trends or decrease (e.g., 50) for shorter-term sensitivity.
RSI Length (default: 14): Adjust for more (e.g., 7) or less (e.g., 21) responsive momentum signals.
RSI Buy/Sell Thresholds (default: 50): Set higher (e.g., 55) for buys or lower (e.g., 45) for sells to require stronger momentum.
Wick Tolerance (default: 0.05): Increase (e.g., 0.1) to allow larger wicks, generating more signals, or decrease (e.g., 0.02) for stricter conditions.
Require Retracement (default: true): Disable to remove the two-candle retracement requirement, increasing signal frequency.
Trading: Use signals in conjunction with the RSI dashboard and market context. For example, avoid buy signals if the RSI dashboard is red (overbought). Always apply proper risk management, such as setting stop-losses based on recent lows/highs.
What Makes It Original
CyberCandle SwiftEdge stands out due to its futuristic, AI-inspired visual design and user-friendly customization:
Neon Aesthetics: Glowing Heikin Ashi candles, gradient EMA, and dynamic signal icons (triangles and arrows) with RSI-driven transparency create a high-tech, immersive experience.
RSI Dashboard: A compact, top-right display with a neon circle, RSI value, and adaptive status indicator (triangle/square) provides instant momentum insights without cluttering the chart.
Customizability: Users can fine-tune EMA length, RSI parameters, wick tolerance, and retracement requirements via TradingView’s settings, balancing signal frequency and precision.
Integrated Approach: The synergy of Heikin Ashi’s trend clarity, EMA’s directional strength, and RSI’s momentum validation offers a cohesive strategy that reduces false signals.
Why This Combination?
The script combines Heikin Ashi, EMA, and RSI for a complementary effect:
Heikin Ashi smooths price fluctuations, making it ideal for identifying sustained trends and retracements, which are critical for the strategy’s signal logic.
EMA provides a reliable trend filter, ensuring signals align with the broader market direction. Its gradient color enhances visual trend recognition.
RSI adds momentum context, confirming that signals occur during favorable conditions (e.g., RSI > 50 for buys). The dashboard makes RSI intuitive, even for non-technical users.
Together, these components create a balanced system that captures trend reversals after retracements, validated by momentum, with a visually engaging interface that simplifies decision-making.
Tips
Best used on volatile assets (e.g., BTC/USD, EUR/USD) and higher timeframes (1H, 4H) for clearer trends.
Experiment with parameters in the settings to match your trading style (e.g., increase wick tolerance for more signals).
Combine with other analysis (e.g., support/resistance) for higher-confidence trades.
Note
This indicator is for informational purposes and does not guarantee profits. Always backtest and use proper risk management before trading.
Machine Learning RSI ║ BullVisionOverview:
Introducing the Machine Learning RSI with KNN Adaptation – a cutting-edge momentum indicator that blends the classic Relative Strength Index (RSI) with machine learning principles. By leveraging K-Nearest Neighbors (KNN), this indicator aims at identifying historical patterns that resemble current market behavior and uses this context to refine RSI readings with enhanced sensitivity and responsiveness.
Unlike traditional RSI models, which treat every market environment the same, this version adapts in real-time based on how similar past conditions evolved, offering an analytical edge without relying on predictive assumptions.
Key Features:
🔁 KNN-Based RSI Refinement
This indicator uses a machine learning algorithm (K-Nearest Neighbors) to compare current RSI and price action characteristics to similar historical conditions. The resulting RSI is weighted accordingly, producing a dynamically adjusted value that reflects historical context.
📈 Multi-Feature Similarity Analysis
Pattern similarity is calculated using up to five customizable features:
RSI level
RSI momentum
Volatility
Linear regression slope
Price momentum
Users can adjust how many features are used to tailor the behavior of the KNN logic.
🧠 Machine Learning Weight Control
The influence of the machine learning model on the final RSI output can be fine-tuned using a simple slider. This lets you blend traditional RSI and machine learning-enhanced RSI to suit your preferred level of adaptation.
🎛️ Adaptive Filtering
Additional smoothing options (Kalman Filter, ALMA, Double EMA) can be applied to the RSI, offering better visual clarity and helping to reduce noise in high-frequency environments.
🎨 Visual & Accessibility Settings
Custom color palettes, including support for color vision deficiencies, ensure that trend coloring remains readable for all users. A built-in neon mode adds high-contrast visuals to improve RSI visibility across dark or light themes.
How It Works:
Similarity Matching with KNN:
At each candle, the current RSI and optional market characteristics are compared to historical bars using a KNN search. The algorithm selects the closest matches and averages their RSI values, weighted by similarity. The more similar the pattern, the greater its influence.
Feature-Based Weighting:
Similarity is determined using normalized values of the selected features, which gives a more refined result than RSI alone. You can choose to use only 1 (RSI) or up to all 5 features for deeper analysis.
Filtering & Blending:
After the machine learning-enhanced RSI is calculated, it can be optionally smoothed using advanced filters to suppress short-term noise or sharp spikes. This makes it easier to evaluate RSI signals in different volatility regimes.
Parameters Explained:
📊 RSI Settings:
Set the base RSI length and select your preferred smoothing method from 10+ moving average types (e.g., EMA, ALMA, TEMA).
🧠 Machine Learning Controls:
Enable or disable the KNN engine
Select how many nearest neighbors to compare (K)
Choose the number of features used in similarity detection
Control how much the machine learning engine affects the RSI calculation
🔍 Filtering Options:
Enable one of several advanced smoothing techniques (Kalman Filter, ALMA, Double EMA) to adjust the indicator’s reactivity and stability.
📏 Threshold Levels:
Define static overbought/oversold boundaries or reference dynamically adjusted thresholds based on historical context identified by the KNN algorithm.
🎨 Visual Enhancements:
Select between trend-following or impulse coloring styles. Customize color palettes to accommodate different types of color blindness. Enable neon-style effects for visual clarity.
Use Cases:
Swing & Trend Traders
Can use the indicator to explore how current RSI readings compare to similar market phases, helping to assess trend strength or potential turning points.
Intraday Traders
Benefit from adjustable filters and fast-reacting smoothing to reduce noise in shorter timeframes while retaining contextual relevance.
Discretionary Analysts
Use the adaptive OB/OS thresholds and visual cues to supplement broader confluence zones or market structure analysis.
Customization Tips:
Higher Volatility Periods: Use more neighbors and enable filtering to reduce noise.
Lower Volatility Markets: Use fewer features and disable filtering for quicker RSI adaptation.
Deeper Contextual Analysis: Increase KNN lookback and raise the feature count to refine pattern recognition.
Accessibility Needs: Switch to Deuteranopia or Monochrome mode for clearer visuals in specific color vision conditions.
Final Thoughts:
The Machine Learning RSI combines familiar momentum logic with statistical context derived from historical similarity analysis. It does not attempt to predict price action but rather contextualizes RSI behavior with added nuance. This makes it a valuable tool for those looking to elevate traditional RSI workflows with adaptive, research-driven enhancements.
Trend Confirmation StrategyComprehensive Trend Confirmation System
Indicator Features (Professional Description):
Comprehensive Trend Confirmation System is a versatile indicator meticulously designed to identify and confirm trend-based trading opportunities with exceptional efficiency. By seamlessly integrating analysis from a suite of leading technical tools, it aims to provide superior accuracy and reliability for informed trading decisions.
Key Features:
Intelligent Trend Identification: A robust trend analysis system that considers:
Adjustable Moving Averages: Utilizes three customizable moving average periods (fast, medium, slow) with user-selectable lengths and types (SMA, EMA, WMA, VWMA) to accurately determine the prevailing trend across different timeframes.
In-depth Price Action Analysis: Examines the formation of Higher Highs/Higher Lows (uptrend) and Lower Highs/Lower Lows (downtrend) to validate price direction.
Average Directional Index (ADX) with Adjustable Threshold: Measures the strength of a trend and employs the comparison between +DI and -DI to pinpoint the dominant momentum, featuring a customizable threshold to filter out weak signals.
Multi-Factor Signal Confirmation System: Enhances the reliability of trading signals through verification from four distinct confirmation tools:
Volume Analysis with Average Reference: Assesses whether trading volume supports price movements by comparing it to historical averages.
Relative Strength Index (RSI) with Reference Levels: Measures price momentum and identifies overbought/oversold conditions to confirm trend strength.
Moving Average Convergence Divergence (MACD) Divergence and Crossovers: Detects shifts in momentum and potential trend changes through the relationship between the MACD line and the Signal line.
Stochastic Oscillator with Reference Levels: Measures the current price's position relative to its historical range to evaluate overbought/oversold conditions and potential reversal opportunities.
Intelligent Signal Generation Logic:
Buy Signal: Triggered when a strong uptrend is identified (meeting defined criteria) and confirmed by at least three out of the four confirmation tools.
Sell Signal: Triggered when a strong downtrend is identified (meeting defined criteria) and confirmed by at least three out of the four confirmation tools.
User-Friendly Visualizations:
Moving Averages (MA): Displays three MA lines on the chart with user-configurable colors (default: fast-blue, medium-orange, slow-red) for easy visual trend analysis.
Clear Buy and Sell Signal Symbols: Presents distinct green upward-pointing triangles for buy signals and red downward-pointing triangles for sell signals at the corresponding candlestick.
Dynamic Candlestick Color Coding: Candlesticks are dynamically colored green upon a buy signal and red upon a sell signal for quick identification of trading opportunities.
Highly Customizable Parameters: Users have extensive control over the indicator's parameters, including:
Lengths and types of Moving Averages.
Length and Threshold of the ADX.
Length of the RSI.
Parameters for the MACD (Fast Length, Slow Length, Signal Length).
Parameters for the Stochastic Oscillator (%K Length, %D Length, Smoothing).
Ideal For:
Traders seeking a robust tool to accurately identify and confirm market trends.
Individuals aiming to reduce false signals and enhance the precision of their trading decisions.
Traders employing trend-following strategies in markets with clear directional movement.
Important Note:
While Comprehensive Trend Confirmation System is engineered to improve trading accuracy, no indicator can guarantee 100% profitable trades. Users are advised to utilize this indicator in conjunction with relevant fundamental analysis and sound risk management practices for optimal trading outcomes.
RSI Candles with EMA byAuncleJoeThe Relative Strength Index (RSI) is one of the most widely used momentum indicators in trading. It helps traders assess whether an asset is overbought or oversold by measuring the speed and magnitude of recent price changes. Traditionally, RSI is displayed as a single line oscillating between 0 and 100, but this representation can sometimes make it difficult to spot trends, reversals, and momentum shifts effectively.
To enhance RSI visualization and usability, the RSI Candles with EMA indicator transforms the RSI values into candlestick charts, providing a more intuitive and dynamic way to analyze momentum. Unlike the traditional RSI line, this approach allows traders to observe RSI trends just as they would analyze price charts, making it easier to detect changes in momentum and trend strength.
Each RSI candle represents a specific period’s momentum activity. Green candles indicate that the RSI closed higher than it opened, signaling bullish momentum, while red candles suggest that the RSI closed lower than it opened, indicating bearish sentiment. This candlestick-style visualization helps traders spot RSI trends, breakouts, and reversals more effectively than a simple line chart.
To further refine momentum analysis, this indicator also includes an Exponential Moving Average (EMA) of RSI. The EMA smooths RSI fluctuations and provides a clearer trend direction. When RSI candles remain above the EMA, it suggests strong buying momentum, whereas RSI candles falling below the EMA indicate increasing selling pressure. This combination of RSI candlesticks and an EMA line allows traders to better identify shifts in market sentiment and potential trend reversals.
Additionally, the indicator includes customizable overbought and oversold levels (defaulted at 70 and 30, respectively). These levels help traders recognize when an asset might be overextended in either direction, potentially signaling an upcoming reversal. When RSI candles approach or cross these thresholds, traders can anticipate possible changes in market direction.
This indicator is particularly useful for a wide range of traders. Scalpers and day traders can leverage it to quickly identify short-term momentum shifts, while swing traders can use it to detect potential reversals in multi-day trends. Trend-following traders can confirm bullish or bearish trends based on RSI’s position relative to its EMA, and mean reversion traders can use it to spot extreme conditions where price action might snap back.
By combining RSI candlesticks with an EMA filter, this indicator provides a more dynamic and visually intuitive approach to momentum trading. It offers clearer trend signals, better reversal detection, and enhanced decision-making, making it an essential tool for traders who rely on RSI-based strategies.
Dynamic RSI Bollinger Bands with Waldo Cloud
TradingView Indicator Description: Dynamic RSI Bollinger Bands with Waldo Cloud
Title: Dynamic RSI Bollinger Bands with Waldo Cloud
Short Title: Dynamic RSI BB Waldo
Overview:
Introducing an experimental indicator, the Dynamic RSI Bollinger Bands with Waldo Cloud, designed for adventurous traders looking to explore new dimensions in technical analysis. This indicator overlays on your chart, providing a unique perspective by integrating the Relative Strength Index (RSI) with Bollinger Bands, creating a dynamic trading tool that adapts to market conditions through the lens of momentum and volatility.
What is it?
This innovative indicator combines the traditional Bollinger Bands with the RSI in a way that hasn't been commonly explored. Here's a breakdown:
RSI Integration: The RSI is calculated with customizable length settings, and its values are used not just for momentum analysis but as the basis for the Bollinger Bands. This means the position and width of the bands are directly influenced by the RSI, offering a visual representation of momentum within the context of price volatility.
Dynamic Bollinger Bands: Instead of using price directly, the Bollinger Bands are calculated using a scaled version of the RSI. This scaling is done to fit the RSI values into the price range, ensuring the bands are relevant to the actual price movement. The standard deviation for these bands is also scaled accordingly, providing a unique volatility measure that's momentum-driven.
Waldo Cloud: Named after a visual representation concept, the 'Waldo Cloud' refers to the colored area between the Bollinger Bands, which changes based on various conditions:
Purple when RSI is overbought.
Blue when RSI is oversold.
Green for bullish conditions, defined by the fast-moving average crossing above the slow one, RSI is bullish, and the price is above the slow MA.
Red for bearish conditions, when the fast MA crosses below the slow MA, the RSI is bearish, and the price is below the slow MA.
Gray for neutral market conditions.
Moving Averages: Two simple moving averages (Fast MA and Slow MA) are included, which can be toggled on or off, offering additional trend analysis through crossovers.
How to Use It:
Given its experimental nature, this indicator should be used with caution and in conjunction with other analysis methods:
Identifying Market Conditions: Use the color of the Waldo Cloud to gauge market sentiment. A green cloud might suggest a good time to consider long positions, while a red cloud could indicate potential shorting opportunities. Purple and blue clouds highlight extreme conditions that might precede reversals.
Volatility and Momentum: The dynamic nature of the Bollinger Bands based on RSI provides insight into how momentum is affecting price volatility. When the bands are wide, it might indicate high momentum and potential trend continuation or reversal, depending on the RSI's position relative to its overbought/oversold levels.
Trend Confirmation: The moving average crossovers can act as confirmation signals. For instance, a bullish crossover (fast MA over slow MA) within a green cloud might strengthen a buy signal, whereas a bearish crossover in a red cloud might reinforce a sell decision.
Customization: Adjust the RSI length, overbought/oversold levels, and moving average lengths to suit different trading styles or market conditions. Experiment with these settings to find what works best for your strategy.
Combining with Other Indicators: Since this is an experimental tool, it's advisable to use it alongside established indicators like traditional Bollinger Bands, MACD, or trend lines to validate signals.
Conclusion:
The Dynamic RSI Bollinger Bands with Waldo Cloud is an experimental venture into combining momentum with volatility visually and interactively. It's designed for traders who are open to exploring new methods of market analysis.
Remember, due to its experimental status, this indicator should be part of a broader trading strategy, and backtesting or paper trading is recommended before applying it in live trading scenarios. Keep an eye on how the market reacts to the signals provided by this indicator and always consider risk management practices.
RSI Crossover dipali parikhThis script generates buy and sell signals based on the crossover of the Relative Strength Index (RSI) and the RSI-based Exponential Moving Average (EMA). It also includes an additional condition for both buy and sell signals that the RSI-based EMA must be either above or below 50.
Key Features:
Buy Signal: Triggered when:
The RSI crosses above the RSI-based EMA.
The RSI-based EMA is above 50.
A green "BUY" label will appear below the bar when the buy condition is met.
Sell Signal: Triggered when:
The RSI crosses below the RSI-based EMA.
The RSI-based EMA is below 50.
A red "SELL" label will appear above the bar when the sell condition is met.
Customizable Inputs:
RSI Length: Adjust the period for calculating the RSI (default is 14).
RSI-based EMA Length: Adjust the period for calculating the RSI-based EMA (default is 9).
RSI Threshold: Adjust the threshold (default is 50) for when the RSI-based EMA must be above or below.
Visuals:
The RSI is plotted as a blue line.
The RSI-based EMA is plotted as an orange line.
Buy and sell signals are indicated by green "BUY" and red "SELL" labels.
Alerts:
Alerts can be set for both buy and sell conditions to notify you when either condition is met.
How to Use:
Use this script to identify potential buy and sell opportunities based on the behavior of the RSI relative to its EMA.
The buy condition indicates when the RSI is strengthening above its EMA, and the sell condition signals when the RSI is weakening below its EMA.
Strategy Use:
Ideal for traders looking to leverage RSI momentum for entering and exiting positions.
The RSI-based EMA filter helps smooth out price fluctuations, focusing on stronger signals.
This script is designed for both discretionary and algorithmic traders, offering a simple yet effective method for spotting trend reversals and continuation opportunities using RSI.
Advanced Divergence IndicatorAdvanced Divergence Indicator
Unlock the full potential of your trading strategy with the Advanced Divergence Indicator, a powerful tool designed to identify and analyze bullish and bearish divergences using multiple technical indicators. Whether you're a seasoned trader or just starting out, this indicator provides clear, actionable signals to help you make informed trading decisions.
What It Does
The Advanced Divergence Indicator detects divergences between price movements and key technical indicators, specifically the Relative Strength Index (RSI) and On-Balance Volume (OBV). Divergence occurs when the price trends in one direction while the indicator trends in the opposite direction, signaling potential reversals or continuations in the market.
Key Features
Multi-Indicator Analysis
RSI Divergence: Identifies bullish and bearish divergences using the RSI, helping you spot potential reversals based on momentum.
OBV Divergence: Utilizes OBV to detect divergences related to volume flow, providing insights into the strength behind price movements.
Bullish and Bearish Signals
Bullish Divergence: Signals when indicators show higher lows while the price forms lower lows, suggesting a potential upward reversal.
Bearish Divergence: Alerts when indicators display lower highs while the price creates higher highs, indicating a possible downward reversal.
Signal Strength Classification
Standard Signals: Represent typical divergence occurrences, marked with green (bullish) and red (bearish) labels.
Strong Signals: Highlighted with yellow (strong bullish) and blue (strong bearish) labels when divergences coincide with overbought or oversold conditions, enhancing signal reliability.
Customizable Settings
Indicator Selection: Choose to enable RSI, OBV, or both based on your trading preferences.
Pivot Points: Adjust the number of bars left and right to fine-tune pivot detection for more accurate divergence identification.
Range Configuration: Set minimum and maximum bar ranges to control the sensitivity of divergence detection, suitable for different timeframes and trading styles.
Noise Cancellation: Reduce false signals by enabling noise filtering, ensuring that only significant divergences are highlighted.
Visual Clarity
Color-Coded Labels: Easily distinguish between different types of divergences with intuitive color codes—green for bullish, red for bearish, yellow for strong bullish, and blue for strong bearish signals.
Clean Chart Display: The indicator overlays seamlessly on your chart without clutter, ensuring that signals are easily identifiable without distracting from price action.
Real-Time Alerts
Custom Alert Conditions: Receive instant notifications for bullish and bearish divergences, enabling you to act promptly on potential trading opportunities.
Combined Alerts: Get alerts for either bullish or bearish signals, or both, based on your selected criteria.
How to Use
Add the Indicator to Your Chart
Apply the Advanced Divergence Indicator to your desired chart and timeframe.
Configure Settings
Select Indicators: Choose to enable RSI, OBV, or both under the "Indicator Settings" group.
Adjust Parameters: Customize RSI length, pivot points, and divergence ranges to match your trading strategy and the specific asset you are analyzing.
Enable Noise Cancellation: Activate this feature to filter out minor divergences and focus on more significant signals.
Interpret the Signals
Bullish Signals: Look for green or yellow labels below the price bars indicating potential upward reversals.
Bearish Signals: Identify red or blue labels above the price bars signaling possible downward reversals.
Strong Signals: Pay special attention to yellow and blue labels as they denote stronger divergences with higher reliability.
Set Up Alerts
Configure alert conditions within the indicator to receive real-time notifications when bullish or bearish divergences are detected, ensuring you never miss a trading opportunity.
Why Choose Advanced Divergence Indicator
Comprehensive Analysis : By combining RSI and OBV, the indicator provides a more robust analysis compared to single-indicator tools, enhancing the accuracy of divergence detection.
Flexibility : Highly customizable settings allow traders to tailor the indicator to their unique strategies and market conditions.
User-Friendly : Clear labels and color codes make it easy for traders of all levels to understand and act on the signals.
Reliability : Strong signal classification and noise cancellation features help reduce false positives, providing more trustworthy trading signals.
RSI + Normalized Fisher Transform with SignalsThis indicator combines three tools for market analysis: the Relative Strength Index (RSI), the RSI's moving average, and the Fisher Transform. RSI is a momentum oscillator that measures the speed and change of price movements, helping identify overbought and oversold conditions. The RSI moving average is a smoothed version of the RSI that filters noise and confirms trends. The Fisher Transform is a mathematical technique that transforms price data into a Gaussian normal distribution, making it easier to identify turning points. It has been normalized to the same scale as the RSI (0-100) for consistency.
Purpose
The goal of this indicator is to identify potential buy and sell opportunities with varying degrees of strength (strong and weak). By combining the RSI, its moving average, and the Fisher Transform, the indicator ensures signals are based on both momentum and reversals, making it highly versatile across different market conditions.
Key Features
This indicator provides strong and weak buy and sell signals. A strong buy occurs when the RSI crosses above its moving average while both the RSI and its moving average are oversold (below the default threshold of 30), and the Fisher Transform reverses direction within the same or prior bar while also being oversold. A weak buy occurs when the Fisher Transform is oversold, and the RSI crosses above its moving average while its value is between the default oversold threshold (30) and 50. A strong sell occurs when the RSI crosses below its moving average while both the RSI and its moving average are overbought (above the default threshold of 70), and the Fisher Transform reverses direction within the same or prior bar while also being overbought. A weak sell occurs when the Fisher Transform is overbought, and the RSI crosses below its moving average while its value is between 50 and the default overbought threshold (70).
The indicator includes customizable thresholds and lengths. Users can adjust the oversold and overbought thresholds to suit their trading style. The RSI length, moving average length, and Fisher Transform length are also customizable. The Fisher Transform is scaled to the RSI’s range of 0-100 to simplify analysis and signal interpretation.
How to Use the Indicator
On the chart, you will see the RSI line in blue, the RSI moving average in orange, and the Fisher Transform in purple. Horizontal lines at the default oversold (30) and overbought (70) levels mark critical zones for signals. Adjust these thresholds in the indicator settings as needed.
Strong buy signals are shown as larger, darker green arrows below the price. Weak buy signals are small lime arrows below the price. Strong sell signals are larger, darker red arrows above the price. Weak sell signals are small fuchsia arrows above the price.
Signal Interpretation
A strong buy indicates a highly favorable buying opportunity. This typically occurs when the asset is in a downtrend but shows signs of reversal, particularly in oversold zones. A weak buy suggests a potential buying opportunity but with less conviction, often when the market is neutral to slightly bearish but showing upward momentum. A strong sell indicates a highly favorable selling opportunity, usually occurring when the asset is in an uptrend but shows signs of reversal, particularly in overbought zones. A weak sell suggests a potential selling opportunity but with less conviction, often in neutral to slightly bullish markets showing downward momentum.
Practical Tips
Avoid using signals in isolation. Combine this indicator with other tools such as trendlines, moving averages, or support/resistance levels for greater accuracy. Adjust the parameters for different assets to match their volatility. For volatile assets, consider wider thresholds like 20/80 for oversold/overbought levels. For less volatile assets, tighter thresholds like 35/65 may be more appropriate. Use higher timeframes to confirm signals before trading on lower timeframes. Be cautious in sideways markets, as both RSI and the Fisher Transform perform better in trending conditions.
Instructions for Adjustments
To change the oversold or overbought levels, open the indicator settings by clicking the gear icon and modify the "Oversold Threshold" and "Overbought Threshold" values. To adjust lengths for RSI and Fisher Transform, update the "RSI Length," "RSI Moving Average Length," and "Fisher Transform Length" settings. If needed, toggle signal visibility by enabling or disabling specific arrows (Strong Buy, Weak Buy, Strong Sell, Weak Sell) in the "Style" tab.
Best Practices
Risk management is essential. Always set appropriate stop-loss levels and position sizes based on your risk tolerance. Backtest the indicator on historical data to understand its performance and behavior for your chosen asset and timeframe. Combining this indicator with volume or volatility analysis (Bollinger Band Width, for example) can help confirm signal validity.
This indicator simplifies decision-making by identifying high-probability trading opportunities using a combination of momentum, trend, and reversals. Follow these instructions to fully utilize its capabilities without needing to analyze the underlying code.
NASI +The NASI + indicator is an advanced adaptation of the classic McClellan Oscillator, a tool widely used to gauge market breadth. It calculates the McClellan Oscillator by measuring the difference between the 19-day and 39-day EMAs of net advancing issues, which are optionally adjusted to account for the relative strength of advancing vs. declining stocks.
To enhance this analysis, NASI + applies the Relative Strength Index (RSI) to the cumulative McClellan Oscillator values, generating a unique momentum-based view of market breadth. Additionally, two extra EMAs—a 10-day and a 4-day EMA—are applied to the RSI, providing further refinement to signals for overbought and oversold conditions.
With NASI +, users benefit from:
-A deeper analysis of market momentum through cumulative breadth data.
-Enhanced sensitivity to trend shifts with the applied RSI and dual EMAs.
-Clear visual cues for overbought and oversold conditions, aiding in intuitive signal identification.
MTF RSI+CMO PROThis RSI+CMO script combines the Relative Strength Index (RSI) and Chande Momentum Oscillator (CMO), providing a powerful tool to help traders analyze price momentum and spot potential turning points in the market. Unlike using RSI alone, the CMO (especially with a 14-period length) moves faster and accentuates price pops and dips in the histogram, making price shifts more apparent.
Indicator Features:
➡️RSI and CMO Combined: This indicator allows traders to track both RSI and CMO values simultaneously, highlighting differences in their movement. RSI and CMO values are both plotted on the histogram, while CMO values are also drawn as a line moving through the histogram, giving a visual representation of their relationship. The often faster-moving CMO accentuates short-term price movements, helping traders spot subtle shifts in momentum that the RSI might smooth out.
➡️Multi-Time Frame Table: A real-time, multi-time frame table displays RSI and CMO values across various timeframes. This gives traders an overview of momentum across different intervals, making it easier to spot trends and divergences across short and long-term time frames.
➡️Momentum Chart Label: A chart label compares the current RSI and CMO values with values from 1 and 2 bars back, providing an additional metric to gauge momentum. This feature allows traders to easily see if momentum is increasing or decreasing in real-time.
➡️RSI/CMO Bullish and Bearish Signals: Colored arrow plot shapes (above the histogram) indicate when RSI and CMO values are signaling bullish or bearish conditions. For example, green arrows appear when RSI is above 65, while purple arrows show when RSI is below 30 and CMO is below -40, indicating strong bearish momentum.
➡️Divergences in Histogram: The histogram can make it easier for traders to spot divergences between price and momentum. For instance, if the price is making new highs but the RSI or CMO is not, a bearish divergence may be forming. Similarly, bullish divergences can be spotted when prices are making lower lows while RSI or CMO is rising.
➡️Alert System: Alerts are built into the indicator and will trigger when specific conditions are met, allowing traders to stay informed of potential entry or exit points based on RSI and CMO levels without constantly monitoring the chart. These are set manually. Look for the 3 dots in the indicator name.
How Traders Can Use the Indicator:
💥Identifying Momentum Shifts: The RSI+CMO combination is ideal for spotting momentum shifts in the market. Traders can monitor the histogram and the CMO line to determine if the market is gaining or losing strength.
💥Confirming Trade Entries/Exits: Use the real-time RSI and CMO values across multiple time frames to confirm trades. For instance, if the 1-hour RSI is above 70 but the 1-minute RSI is turning down, it could indicate short-term overbought conditions, signaling a potential exit or reversal.
💥Spotting Divergences: Divergences are critical for predicting potential reversals. The histogram can be used to spot divergences when RSI and CMO values deviate from price action, offering an early signal of market exhaustion.
💥Tracking Multi-Time Frame Trends: The multi-time frame table provides insight into the market’s overall trend across several timeframes, helping traders ensure their decisions align with both short and long-term trends.
RSI vs. CMO: Why Use Both?
While both RSI and CMO measure momentum, the CMO often moves faster with a value of 14 for example, reacting to price changes more quickly. This makes it particularly effective for detecting sharp price movements, while RSI helps smooth out price action. By using both, traders get a clearer picture of the market's momentum, particularly during volatile periods.
Confluence and Price Fluidity:
One of the powerful ways to enhance the effectiveness of this indicator is by using it in conjunction with other technical analysis tools to create confluence. Confluence occurs when multiple indicators or price action signals align, providing stronger confirmation for a trade decision. For example:
🎯Support and Resistance Levels: Traders can use RSI+CMO in combination with key support and resistance zones. If the price is nearing a support level and RSI+CMO values start to signal a bullish reversal, this alignment strengthens the case for entering a long position.
🎯Moving Averages: When the RSI+CMO signals a potential trend reversal and this is confirmed by a crossover in moving averages (such as a 50-day and 200-day moving average), traders gain additional confidence in the trade direction.
🎯Momentum Indicators: Traders can also look for momentum indicators like the MACD to confirm the strength of a trend or potential reversal. For instance, if the RSI+CMO values start to decrease rapidly while both the RSI+CMO also shows overbought conditions, this could provide stronger confirmation to exit a long trade or enter a short position.
🎯Candlestick Patterns: Price fluidity can be monitored using candlestick formations. For example, a bearish engulfing pattern with decreasing RSI+CMo values offers confluence, adding confidence to the signal to close or short the trade.
By combining the MTF RSI+CMO PRO with other tools, traders ensure that they are not relying on a single indicator. This layered approach can reduce the likelihood of false signals and improve overall trading accuracy.